Data recording method for optical disk drive

ABSTRACT

A data recording method for an optical disk drive is implemented by the following steps. First, one or more data blocks are encoded and recorded sequentially, and it detects if a buffer under run occurs. If a buffer under run occurs, the recording does not stop immediately until at least the main data of the data block being currently recorded have been recorded completely. Afterwards, it restarts to encode and record from the data block next to the data block where the recording stops. Moreover, the recording also can stops if a servo error is detected, and the data restart to encode and record from the data block where the recording stops or at least one data block preceding the data block where the recording stops.

CROSS REFERENCE TO RELATED APPLICATIONS

This Application is a Division of Application Ser. No. 10/711,381 filedon Sep. 15, 2004. Application Ser. No. 10/711,381 claims priority under35 U.S.C. §119 to Application 092127088 filed on Sep. 30, 2003 inTaiwan. The entire contents of each of these applications areincorporated herein by reference.

BACKGROUND

(A) Field of the Invention

The present invention is related to a data recording method for anoptical disk drive, more specially, to a data recording method for anoptical disk drive for dealing with the event of recording interruption.

(B) Description of the Related Art

If abnormal servo signals of an optical disk drive caused by, forexample, vibration, track-locking errors on a disk or laser defocusing,are detected, or a so-called buffer under run occurs because the hosttransfer speed cannot catch up with the recording speed, the recordingis interrupted. The recording is not continued until the vibrationstops, the track is locked again, the laser refocuses or sufficient datais supplemented in the buffer.

In general, the data to-be-recorded are divided into data blocks inadvance, and are sequentially recorded in unit of data blocks. As shownin FIG. 1, the host data to be recorded are transferred to a firstbuffer 11 by the host (not shown), and are encoded by an encoder 12 togenerate error correction codes (ECCs), in which it needs to wait theentire data of a data block have been received completely for generatingthe related ECCs. In practice, the encoder 12 first encodes several datablocks, and the encoded ECCs are temporarily stored in a second buffer13 for further uses. Afterwards, the data and ECCs are both recorded inthe optical disk.

Referring to FIG. 2, U.S. Pat. No. 6,418,099 B2 discloses an opticaldisk apparatus, in which recording is interrupted immediately once abuffer under run is detected, and the interruption position is stored asthe starting position of the next recording. When the recording iscontinued, it starts to record the data and ECCs from the interruptionposition. In other words, it firstly records the rest unrecorded data ofthe data block where the buffer under run occurs, and continues torecord the following next data blocks. Because the encoded ECCs arestill stored in the second buffer 13 of FIG. 1, thereby it doesn't tore-encode when the recording is continued. However, the above recordingmethod has to record the recording interruption position and maintainsdata in the second buffer 13 during interruption. Furthermore, theinaccuracy of the start recording position may result in data loss.

SUMMARY

The objective of the present invention is to provide a data recordingmethod for an optical disk drive for dealing with the event of recordinginterruption, by which recording manners can be unitized and theinferior recording quality caused by servo signal errors can be avoided.

In the first embodiment, the data recording method for an optical diskdrive put forth in the present invention includes the following steps.First, several data blocks are encoded and recorded sequentially, and itdetects if the buffer under run occurs. If the buffer under run occurs,the recording does not stop immediately until at least the main data ofthe data block where the buffer under run occurs have been recordedcompletely. Afterwards, the data block next to the data block where thebuffer under run occurs is re-encoded and recorded.

In the second embodiment, the data recording method for an optical diskdrive of the present invention includes the following steps. First, oneor more data blocks are encoded and recorded sequentially, and itdetects if the servo signal error occurs. If the servo signal erroroccurs, the recording stops immediately. Afterwards, it restarts toencode and record the data block where the recording stops or a datablock preceding the data block where the recording stops.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a known recording data generation method for anoptical disk drive;

FIG. 2 illustrates a known data recording method for an optical diskdrive;

FIG. 3 illustrates the data recording method for an optical disk driveof the first embodiment in accordance with the present invention;

FIG. 4 illustrates the flow chart of the data recording method for anoptical disk drive of the first embodiment in accordance with thepresent invention;

FIG. 5 illustrates the data recording method for an optical disk driveof the second embodiment in accordance with the present invention; and

FIG. 6 illustrates the flow chart of the data recording method for anoptical disk drive of the second embodiment in accordance with thepresent invention.

DETAILED DESCRIPTION

FIG. 3 is the illustrative diagram of the data recording method for anoptical disk drive of the first embodiment in accordance with thepresent invention, which shows the situation when a buffer under runoccurs. The buffer under run is a situation that the number of datablocks including data and ECCs in the buffer, which is available to berecorded, is smaller than a threshold value. Generally, a data blockincludes a main data area for storing the host data and an auxiliarydata area for storing the ECCs. When a buffer under run is detected, thedata recording doesn't be interrupted right away. In this embodiment,when the buffer under run occurs, the data of the data block (N) arebeing recorded. Before the data blocks stored in the buffer are used up,the recording doesn't stop until at least the main data of the datablock (N) stored in the buffer have been recorded, i.e., theinterruption occurs in the auxiliary data area of the data block (N). Ingeneral, the buffer is large enough to store one or several data blocks.Therefore, when the buffer under run occurs, the buffer still stores thedata of the data block where the buffer under run occurs. This means itdoesn't have the problem that the data is not available to be recordedbefore stop recording. In this embodiment, the ECCs have to be encodedagain before the recording restarts, and the recording restarts at thebeginning of the data block (N+1), i.e., the beginning of the data blocknext to the data block where the buffer under run occurs. Theabove-described method and the case without the buffer under run, bothstart the recording at the beginnings of data blocks, so that therecording manners can be unitized and it avoids the disadvantages of theprior art that the interruption position must be stored and the data inthe second buffer must be maintained. As a result, the action ofrestarting recording is essentially equivalent to that of the originalrecording method, so the setting of the recording control signalsbecomes more convenient, thereby the control manners can be simplified,and the probability of error occurrence can be effectively reduced.Moreover, part of the ECCs may not be recorded when recording isinterrupted, and therefore an unrecorded region exists between twoadjoining data blocks. In other words, the recording doesn't start atthe interrupted position, which differs from the prior art. Accordingly,to keep part of the ECCs not being recorded can avoid the overlap of therecording data caused by the inaccuracy start position of the restartrecording that is too early.

In this embodiment, the recording is interrupted at the auxiliary dataarea located at the end of the data block rather than at the main dataarea for storing host data. Therefore, even if the recording quality isnot good due to unstable actions such as the interruption andreconnection of the auxiliary data, or an error caused by data is notrecorded, the correctness of the host data will not be affected, andthereby the recording quality of the entire disk can be maintained. Inaddition, as described above, the auxiliary data can be incompletelyrecorded to induce the discontinuity of the data, so as to avoid thesituation of the overlap of the recording.

FIG. 4 is the data recording flow diagram of the above-described firstembodiment. First, an optical disk drive receives host data transferredfrom a host and stores them in a buffer. Encoding and recording start ifthe amount of data stored in the buffer is larger than a first thresholdvalue, otherwise more host data will be received and stored in thebuffer. After the encoding and recording start, the optical disk drivecontinues receiving and storing the host data in the buffer until thehost informs that the data have been transferred completely. If the datafrom the host have been transferred completely and no data remains inthe buffer, it represents that all data have been recorded. Otherwise,the encoding and recording are performed continuously to record the datastored in the buffer to the disk. If the data have not yet beentransferred completely and the number of the encoded data blocks issmaller than a second threshold value, i.e., the buffer under runoccurs, the remaining data in the data block are recorded continuously,and the recording doesn't stop until at least the remaining main data ofthe data block, where the buffer under run occurs, in the buffer havebeen recorded completely. When the recording restarts, the data in thedata block next to the data block where the recording is stopped have torestart encoding, so as to continue the record work of the next datablock.

Besides the above-described buffer under run, the servo signal errorscaused by vibration or defocusing also can result in the recordinginterruption.

FIG. 5 is the illustrative diagram for the data recording method for anoptical disk drive of the second embodiment, which shows the situationwhen a servo signal error occurs, and is applied to a rewritable disk.The servo error is an error on the servo system of an optical disk drivethat results in the incorrectness of record, such as the motor controlerror on the servo system caused by vibration, disk track locking erroror laser defocusing error. If the servo error occurs in the data block(N−1), and the time to detect the servo error is at the end of the datablock (N−1), the recording cannot be timely interrupted in the datablock (N−1) because the time to detect the servo signal is too close tothe data block (N). Therefore, the recording is actually interrupted inthe data block (N). Because the buffer under run only relates to theproblem that data cannot be transferred timely, the data recordingquality before the interruption, in general, is not affected. However,the servo error is due to the physical out-of-control status such asvibration and laser focusing failure, so the correctness of datarecording between the servo error occurrence and the record interruptionis unreliable. In order to avoid the above-described problem, the timeto restart encoding and recording is set at the beginning of the datablock (N−1), i.e., the beginning of the data block ahead of the datablock (N) where the recording is interrupted. In other words, data inthe data block (N−1) and data in the data block (N) before interruptionare re-recorded again, so as to remove the anxiety of unreliablerecorded data.

The above-described re-recorded area is not limited to extend to theadjacent data block ahead of the data block occurring interruption, andcan be determined according to practical conditions. For example,previous multiple data blocks are re-recorded, or only the data blockwhere the recording is interrupted are re-recorded. If there isunreliable recorded data caused by servo error exists, all the relativedata blocks can be re-recorded again. Moreover, when the disk is arewritable disk, the recording method of the second embodiment also canbe applied to the situation of the buffer under run, i.e., the bufferunder run is deemed a servo error.

FIG. 6 is the data recording flow chart of the second embodiment. First,the data are stored in a buffer, and the data encoding and recordingstarts if the amount of data stored in the buffer is larger than athreshold value, otherwise the host data are received continuously andstored in the buffer. Afterwards, while encoding and recording, the hostdata are received continuously and stored in the buffer. If a servoerror occurs, the recording stops immediately, and it restart to encodeand record a data block preceding the data block where the recordingstops or the data block where the recording stops. If there are no servoerrors, the question whether the host data have been transferredcompletely is verified. If the data have been transferred completely andno data remains in the buffer, it represents that all data have beenrecorded. If the host data have not yet been transferred completely orthe data storage of the buffer is not empty, the encoding and recordingcontinue.

The data recording method for an optical disk drive of the presentinvention mainly is applied to the current digital video drive (DVD).However, it is possible that an optical disk drive of a new type appearsin the future only if the optical disk drive of a new type applies thetechnique in accordance with the present invention, which is covered bythe scope of the present invention.

The above-described embodiments of the present invention are intended tobe illustrative only. Numerous alternative embodiments may be devised bythose skilled in the art without departing from the scope of thefollowing claims.

1. A data recording method for an optical disk drive, the methodcomprising: encoding and recording data blocks; detecting whether aservo error occurs; stopping a recording operation if a servo erroroccurs; and restarting to encode and record data from the data blockwhere the recording stops or at least one data block preceding the datablock where the recording stops.
 2. The method of claim 1, wherein thedata restart to encode and record from the beginning of the data blockwhere the recording stops.
 3. The method of claim 1, wherein the servoerror is caused by vibration, laser defocusing, track-locking error orbuffer under run.
 4. The method of claim 1, further comprising recordinga rewritable disk.
 5. The method of claim 1, further comprisingrecording a digital video drive (DVD).